package com.jeesite.modules.exam.quota.entity;

import javax.validation.constraints.Size;

import com.jeesite.common.entity.DataEntity;
import com.jeesite.common.mybatis.annotation.Column;
import com.jeesite.common.mybatis.annotation.Table;
import com.jeesite.common.mybatis.mapper.query.QueryType;

/**
 * 考核任务加减分指标表Entity
 * @author xhc
 * @version 2022-05-28
 */
@Table(name="dc_sup_exam_quota_add", alias="a", label="考核任务加减分指标表信息", columns={
		@Column(name="id", attrName="id", label="主键", isPK=true),
		@Column(name="quota_group", attrName="quotaGroup", label="指标类型", comment="指标类型（3加分项、4减分项）"),
		@Column(name="exam_year", attrName="examYear", label="考核年度"),
		@Column(name="quota_type", attrName="quotaType", label="指标类别"),
		@Column(name="sort_num", attrName="sortNum", label="序号", comment="序号（排序列）", isUpdateForce=true),
		@Column(name="quota_content", attrName="quotaContent", label="目标内容"),
		@Column(name="quota_unit", attrName="quotaUnit", label="单位", comment="单位（数学或物理方面的单位）"),
		@Column(name="quota_weight", attrName="quotaWeight", label="权数"),
		@Column(name="quota_class", attrName="quotaClass", label="指标分类",comment = "指标分类（1.普通指标、2加分项指标、3减分项指标）"),
		@Column(name="current_yaer_goal", attrName="currentYaerGoal", label="本年度目标"),
		@Column(name="last_yaer_goal", attrName="lastYaerGoal", label="上一年度目标任务"),
		@Column(name="last_year_complete", attrName="lastYearComplete", label="上一年度完成情况"),
		@Column(name="exame_org", attrName="exameOrg", label="被考核单位编码", comment="被考核单位编码（单选）"),
		@Column(name="assess_method", attrName="assessMethod", label="考核方式", comment="考核方式（单选）"),
		@Column(name="exame_name", attrName="exameName", label="被考核单位名称", comment="被考核单位名称（单选）", queryType=QueryType.LIKE),
		@Column(name="create_by", attrName="createBy", label="创建人", isUpdate=false, isQuery=false),
		@Column(name="create_date", attrName="createDate", label="创建时间", isUpdate=false, isQuery=false, isUpdateForce=true),
		@Column(name="update_by", attrName="updateBy", label="更新人", isQuery=false),
		@Column(name="update_date", attrName="updateDate", label="更新时间", isQuery=false, isUpdateForce=true),
	}, orderBy="a.update_date DESC"
)
public class DcSupExamQuotaAdd extends DataEntity<DcSupExamQuotaAdd> {
	
	private static final long serialVersionUID = 1L;
	 /**
	 * 指标类型（3加分项、4减分项）
	 */
	private String quotaGroup;
	 /**
	 * 考核年度
	 */
	private String examYear;
	 /**
	 * 指标类别
	 */
	private String quotaType;
	 /**
	 * 序号（排序列）
	 */
	private Long sortNum;
	 /**
	 * 目标内容
	 */
	private String quotaContent;
	 /**
	 * 单位（数学或物理方面的单位）
	 */
	private String quotaUnit;
	 /**
	 * 权数
	 */
	private Double quotaWeight;
	/**
	 * 指标分类
	 */
	private String quotaClass;
	/**
	 * 分数
	 */
	private Double quotaScore;
	 /**
	 * 本年度目标
	 */
	private String currentYaerGoal;
	 /**
	 * 上一年度目标任务
	 */
	private String lastYaerGoal;
	 /**
	 * 上一年度完成情况
	 */
	private String lastYearComplete;
	 /**
	 * 被考核单位编码（单选）
	 */
	private String exameOrg;
	 /**
	 * 被考核单位名称（单选）
	 */
	private String exameName;

	private String fileuploadId;

	private String actions;

	private String fileId;

	private String fileName;
	private String assessMethod;
	private String scoreReason;

	/**
	 * 百分比
	 */
	private Double percentage;

	public Double getPercentage() {
		return percentage;
	}

	public void setPercentage(Double percentage) {
		this.percentage = percentage;
	}

	public String getScoreReason() {
		return scoreReason;
	}

	public void setScoreReason(String scoreReason) {
		this.scoreReason = scoreReason;
	}

	public String getAssessMethod() {
		return assessMethod;
	}

	public void setAssessMethod(String assessMethod) {
		this.assessMethod = assessMethod;
	}

	public String getFileId() {
		return fileId;
	}

	public void setFileId(String fileId) {
		this.fileId = fileId;
	}

	public String getFileName() {
		return fileName;
	}

	public void setFileName(String fileName) {
		this.fileName = fileName;
	}

	public String getQuotaClass() {
		return quotaClass;
	}

	public void setQuotaClass(String quotaClass) {
		this.quotaClass = quotaClass;
	}

	public String getActions() {
		return actions;
	}

	public void setActions(String actions) {
		this.actions = actions;
	}

	public DcSupExamQuotaAdd() {
		this(null);
	}

	public DcSupExamQuotaAdd(String id){
		super(id);
	}
	
	@Size(min=0, max=10, message="指标类型长度不能超过 10 个字符")
	public String getQuotaGroup() {
		return quotaGroup;
	}

	public void setQuotaGroup(String quotaGroup) {
		this.quotaGroup = quotaGroup;
	}
	
	@Size(min=0, max=4, message="考核年度长度不能超过 4 个字符")
	public String getExamYear() {
		return examYear;
	}

	public void setExamYear(String examYear) {
		this.examYear = examYear;
	}
	
	@Size(min=0, max=10, message="指标类别长度不能超过 10 个字符")
	public String getQuotaType() {
		return quotaType;
	}

	public void setQuotaType(String quotaType) {
		this.quotaType = quotaType;
	}
	
	public Long getSortNum() {
		return sortNum;
	}

	public void setSortNum(Long sortNum) {
		this.sortNum = sortNum;
	}
	
	@Size(min=0, max=255, message="目标内容长度不能超过 255 个字符")
	public String getQuotaContent() {
		return quotaContent;
	}

	public void setQuotaContent(String quotaContent) {
		this.quotaContent = quotaContent;
	}
	
	@Size(min=0, max=255, message="单位长度不能超过 255 个字符")
	public String getQuotaUnit() {
		return quotaUnit;
	}

	public void setQuotaUnit(String quotaUnit) {
		this.quotaUnit = quotaUnit;
	}

	public Double getQuotaWeight() {
		return quotaWeight;
	}

	public void setQuotaWeight(Double quotaWeight) {
		this.quotaWeight = quotaWeight;
	}

	@Size(min=0, max=255, message="本年度目标长度不能超过 255 个字符")
	public String getCurrentYaerGoal() {
		return currentYaerGoal;
	}

	public void setCurrentYaerGoal(String currentYaerGoal) {
		this.currentYaerGoal = currentYaerGoal;
	}
	
	@Size(min=0, max=255, message="上一年度目标任务长度不能超过 255 个字符")
	public String getLastYaerGoal() {
		return lastYaerGoal;
	}

	public void setLastYaerGoal(String lastYaerGoal) {
		this.lastYaerGoal = lastYaerGoal;
	}
	
	@Size(min=0, max=255, message="上一年度完成情况长度不能超过 255 个字符")
	public String getLastYearComplete() {
		return lastYearComplete;
	}

	public void setLastYearComplete(String lastYearComplete) {
		this.lastYearComplete = lastYearComplete;
	}
	
	@Size(min=0, max=100, message="被考核单位编码长度不能超过 100 个字符")
	public String getExameOrg() {
		return exameOrg;
	}

	public void setExameOrg(String exameOrg) {
		this.exameOrg = exameOrg;
	}
	
	@Size(min=0, max=100, message="被考核单位名称长度不能超过 100 个字符")
	public String getExameName() {
		return exameName;
	}

	public void setExameName(String exameName) {
		this.exameName = exameName;
	}

	public String getFileuploadId() {
		return fileuploadId;
	}

	public void setFileuploadId(String fileuploadId) {
		this.fileuploadId = fileuploadId;
	}

	public Double getQuotaScore() {
		return quotaScore;
	}

	public void setQuotaScore(Double quotaScore) {
		this.quotaScore = quotaScore;
	}
}